"use strict";
cc._RF.push(module, '1cf11HEKwVMX7Uvl9Yspwf5', '_Async');
// _Async.js

"use strict";

// @export
module.exports = {
  /**
   * 顺序调用
   * 
   * @param  {...any} oFunQ 函数队列
   * @return {void}
   */
  serial: function serial() {
    for (var _len = arguments.length, oFunQ = new Array(_len), _key = 0; _key < _len; _key++) {
      oFunQ[_key] = arguments[_key];
    }

    if (!oFunQ || oFunQ.length <= 0) {
      return;
    } // 回调函数


    var funCb = function funCb() {
      if (!oFunQ || oFunQ.length <= 0) {
        return;
      } // 函数对象出队


      var funCurr = oFunQ.shift();

      if (!funCurr) {
        funCb();
        return;
      } // 将回调函数作为参数


      funCurr(funCb);
    };

    funCb();
  }
};

cc._RF.pop();